package br.com.insight.consultoria.negocio.bo;

import java.util.List;

import br.com.insight.consultoria.entity.NivelAtuacao;
import br.com.insight.consultoria.erro.exception.InsightConstants;
import br.com.insight.consultoria.erro.exception.InsightException;
import br.com.insight.consultoria.erro.exception.SistemaException;
import br.com.insight.consultoria.integracao.dao.interfacedao.NivelAtuacaoDAO;
import br.com.insight.consultoria.negocio.bo.interfacebo.NivelAtuacaoBO;

public class NivelAtuacaoImpBO implements NivelAtuacaoBO{

	private NivelAtuacaoDAO nivelAtuacaoDAO;
	
	
	public List<NivelAtuacao> listarNivelAtuacao()throws InsightException {
		
		try{
		
		return getNivelAtuacaoDAO().listarNivelAtuacao();
	
		}catch(InsightException exception){
			
			throw exception;
			
		}catch(Exception exception){
			
			throw new SistemaException(InsightConstants.MENSAGEM_ERRO_NAO_TRATADO,exception);
			
		}
		
	}

	public NivelAtuacao getNivelAtuacao(Long id) throws InsightException{
		
		try{
		
		return getNivelAtuacaoDAO().getNivelAtuacao(id);
		
		}catch(InsightException exception){
			
			throw exception;
			
		}catch(Exception exception){
			
			throw new SistemaException(InsightConstants.MENSAGEM_ERRO_NAO_TRATADO,exception);
			
		}
		
	}
	
	public NivelAtuacaoDAO getNivelAtuacaoDAO() {
		return nivelAtuacaoDAO;
	}

	public void setNivelAtuacaoDAO(NivelAtuacaoDAO nivelAtuacaoDAO) {
		this.nivelAtuacaoDAO = nivelAtuacaoDAO;
	}
	
}
